// 接口域名
let mainUrl =''
// #ifdef H5
mainUrl= process.env.NODE_ENV !== 'production' ? '/web-api' : 'https://www.cdlepan.com:7443'; //正式服
// mainUrl= process.env.NODE_ENV !== 'production' ? '/api' : 'https://neijiangxingkong.com/case-manage'; //测试服 http://182.43.238.151:8085
// #endif
// #ifndef H5
mainUrl = 'https://www.cdlepan.com:7443'
// mainUrl = 'https://www.land-info.cn:8443/case-manage'//测试服
// #endif

/*
------------------------- 使用 （常用） ----------------------
util.request({
  url: '',//必填,
  data:{}, // （非必填）
}).then(res => {
  //请求成功（返回'OK'）处理
})
-------------------------------------------------------------
--------api：https://developers.weixin.qq.com/miniprogram/dev/api/network/request/wx.request.html
param{
  url: '',//必填,
  data:{}, // 非必填
  domainName: '',//请求域名（非必填）,默认 mainUrl / 传入指定域名
}
*/
// 统一网络请求
function request(url, params) {
	params = params || {};
	let domainName = params.domainName || mainUrl;
	let Data=params.method?params.data:JSON.stringify(params.data)
	if(uni.getStorageSync('USER_TOKEN')){
		params.header=params.header||{
			"Content-Type": "application/json;charset=UTF-8;",
			// "Authorization":"Bearer " + uni.getStorageSync('USER_TOKEN')
			"Authorization": uni.getStorageSync('USER_TOKEN')
		}
	}
	return new Promise((resolve, reject) => {
		uni.request({
			url: domainName + url, //服务器url+参数中携带的接口具体地址
			data: Data || {}, //请求参数
			params: params.params || {},
			header: params.header || {
				"Content-Type": "application/json;charset=UTF-8;" //设置后端需要的常用的格式就好，特殊情况调用的时候单独设置
				// "Content-Type": "application/texts;charset=UTF-8;" 
				 // "Content-Type": "application/x-www-form-urlencoded;charset=UTF-8;" 
			},
			method: params.method || 'get', //默认为GET,可以不写，如常用请求格式为POST，可以设置POST为默认请求方式
			dataType: params.dataType || 'json', //返回的数据格式,默认为JSON，特殊格式可以在调用的时候传入参数
			responseType: params.responseType || 'text', //响应的数据类型
			success: res => {
				if(res.statusCode === 401){//  登录失效
					uni.reLaunch({
						url: '/pages/login/login?exit=2'
					})
					reject('登录失效,请重新登录')
				}else{
					resolve(res.data)
				}
			},
			fail: err => {
				reject(err)
			}
		})
	})
}

function getApiTime(dataTime, format) {
	var formateArr = ['Y', 'M', 'D', 'h', 'm', 's'];
	dataTime = dataTime || '';
	format = format || 'Y-M-D h:m:s';
	// 使用方式
	var returnArr = [];
	var date = dataTime ? new Date(dataTime) : new Date();
	returnArr.push(date.getFullYear());
	returnArr.push(formatNumber(date.getMonth() + 1));
	returnArr.push(formatNumber(date.getDate()));
	returnArr.push(formatNumber(date.getHours()));
	returnArr.push(formatNumber(date.getMinutes()));
	returnArr.push(formatNumber(date.getSeconds()));
	for (var i in returnArr) {
		format = format.replace(formateArr[i], returnArr[i]);
	}
	return format;
}
//数据转化  
function formatNumber(n) {
	n = n.toString()
	return n[1] ? n : '0' + n
}

function toastMsg(title, icon, duration) {
	uni.showToast({
		title: title,
		icon: icon ? icon : 'none',
		mask: true,
		duration: duration ? Number(duration) : 2000
	})
}
module.exports = {
	mainUrl: mainUrl, //常用域名地址
	request, //统一网络请求接口
	getApiTime, // 获取当前时间
	toastMsg,
}
